import request from '@/utils/request'

// 获取问题列表（根据分类）
export function getQuestionListByCategory(params) {
  return request({
    url: '/api/question/page/category',
    method: 'post',
    data: {
      pageNum: params.pageNum,
      pageSize: params.pageSize,
      name: params.category
    }
  })
}

// 获取问题列表（根据难度）
export function getQuestionListByDifficulty(params) {
  return request({
    url: '/api/question/page/difficulty',
    method: 'post',
    data: {
      pageNum: params.pageNum,
      pageSize: params.pageSize,
      difficulty: params.difficulty
    }
  })
}

// 获取问题列表（根据状态）
export function getQuestionListByStatus(status, params) {
  return request({
    url: `/api/question/page/status/${status}`,
    method: 'post',
    data: {
      pageNum: params.pageNum,
      pageSize: params.pageSize
    }
  })
}

// 获取问题列表（根据描述）
export function getQuestionListByDescription(params) {
  return request({
    url: '/api/question/page/description',
    method: 'post',
    data: {
      pageNum: params.pageNum,
      pageSize: params.pageSize,
      description: params.description
    }
  })
}

// 获取题目集下的问题
export function getQuestionsBySetId(setId) {
  return request({
    url: `/api/question/set/${setId}`,
    method: 'get'
  })
}

// 获取问题详情
export function getQuestionDetail(id) {
  return request({
    url: `/api/question/${id}`,
    method: 'get'
  })
}

// 新增问题
export function addQuestion(data) {
  return request({
    url: '/api/question',
    method: 'post',
    data
  })
}

// 修改问题
export function updateQuestion(data) {
  return request({
    url: '/api/question',
    method: 'put',
    data
  })
}

// 删除问题
export function deleteQuestion(id) {
  return request({
    url: `/api/question/${id}`,
    method: 'delete'
  })
}

// 批量删除问题
export function batchDeleteQuestion(ids) {
  return request({
    url: '/api/question/batch',
    method: 'delete',
    data: ids
  })
}

// 批量启用问题
export function batchEnableQuestion(ids) {
  return request({
    url: '/api/question/batch/enable',
    method: 'put',
    data: { ids }
  })
}

// 获取问题分类列表
export function getCategoryList() {
  return request({
    url: '/api/question/category/list',
    method: 'get'
  })
}

// 新增问题分类
export function addCategory(data) {
  return request({
    url: '/api/question/category',
    method: 'post',
    data
  })
}

// 修改问题分类
export function updateCategory(data) {
  return request({
    url: '/api/question/category',
    method: 'put',
    data
  })
}

// 删除问题分类
export function deleteCategory(id) {
  return request({
    url: `/api/question/category/${id}`,
    method: 'delete'
  })
} 